package cn.b.sky.shop.activiti.dao;

import cn.b.sky.shop.activiti.model.SkyService;
import cn.b.sky.shop.activiti.model.condition.SkyServiceCondition;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <strong>Title : ServiceDao.java<br></strong>
 * <strong>Package : cn.b.sky.shop.activiti.dao<br></strong>
 * <strong>Description : </strong>服务操作数据接口<br> 
 * <strong>Create on : 2015-7-1 上午10:49:37<br></strong>
 * <p>
 * @author lidapeng<br>
 * @version <strong>v1.0.0</strong><br>
 * <br>
 * <strong>修改历史:</strong><br>
 * 修改人 | 修改日期 | 修改描述<br>
 * -------------------------------------------<br>
 * <br>
 * <br>
 */
public interface SkyServiceDao {

  /**
   * <strong>Title : getServiceByCondition<br></strong>
   * <strong>Description : </strong>根据条件查询服务<br> 
   * <strong>Create on : 2015-7-1 下午2:46:15<br></strong>
   * <p>
   * @param condition
   * @return List<SkyServiceService>
   * @throws 
   * @author lidapeng<br>
   * @version <strong>v1.0.0</strong><br>
   * <br>
   * <strong>修改历史:</strong><br>
   * 修改人 | 修改日期 | 修改描述<br>
   * -------------------------------------------<br>
   * <br>
   * <br>
   */
  public List<SkyService> getServiceByCondition(SkyServiceCondition condition);

  public int getServiceCountByCondition(SkyServiceCondition condition);

  public SkyService getImeServiceById(Integer id);

  public void insertImeService(SkyService service);

  public void updateImeService(SkyService service);

  public SkyService getImeServiceAndProcessByServiceId(Integer id);

  public List<SkyService> getServiceByModelId(String modelId);

  public void saveProcessService(@Param("modelId") String modelId, @Param("serviceId") String serviceId);

  public void deleteProcessService(@Param("modelId") String modelId, @Param("serviceId") String serviceId);
}
